1. Field of the Invention
This invention relates to the field of handheld computers. In particular, the invention relates to preserving changes made to data on handheld computers in the event of a data loss on the handheld computer.
2. Description of the Related Art
Handheld computers such as the Palm(copyright) Connected Organizer, from 3Com Corporation, Santa Clara, Calif., are capable of storing personal contact information and synchronizing that information with data in a program on another computer. For example, the date book program on the Palm(copyright) could be synchronized with a Microsoft Outlook(trademark) calendar on the user""s desktop computer.
The synchronization process is more than a backup of the handheld computer. Any changes to the data on the handheld computer are transferred into a corresponding program on the desktop computer and vice versa. For example, if the user adds an appointment on the handheld computer, then during the next synchronization process, that note will become available on the desktop computer in the appropriate program, e.g. Outlook. However, changes to the data are lost if the handheld computer loses power.
Systems and processes such as the FormLogic client/server system have been developed for synchronization of mobile clients with enterprise servers, e.g. U.S. Pat, No. 5,857,201, xe2x80x9cEnterprise Connectivity to Handheld Devicesxe2x80x9d, Gerald V. Wright, et. al. However, the FormLogic system is a synchronization system and does not handle the problem caused by loss of data on the mobile clients.
The previous techniques do not allow a handheld computer to maintain records of changes between synchronization processes. Accordingly, what is needed is an improved method of storing changes between synchronization processes on a handheld computer.
Handheld computers, e.g. a Palm(copyright) Connected Organizer, typically use volatile memory such as random access memory (RAM) to store user data. If the volatile memory of the handheld computer were lost before the data in it is synchronized with the user""s computer, then the user""s changes would be lost. To address this problem, a system and method for preserving the changes made to data on a handheld computer is described.
By storing records of changes made on the handheld computer in a non-volatile memory on the handheld computer and/or transmitting the changes over a wireless communication channel to a computer, the changes can be preserved.
After a failure of the handheld computer""s memory, the contents of the handheld computer memory can be reconstructed using the most recent copy of the data on the user""s computer and the records of changes in the non-volatile memory of the handheld computer and/or the computer that is receiving change records over the wireless communication channel. For example, if the user last synchronized with her/his computer a month ago, that copy of the data from the handheld computer can be reloaded onto the handheld computer and then brought up to date using the change records. In some embodiments, a wireless communication channel is not used, in these embodiments, the change records are stored in the non-volatile memory of the handheld computer.
A number of techniques may be employed to control costs associated with using the wireless communication channel such as adding the change records to other packets. For example, if the handheld computer was preparing a packet for transmission, change records could be added to packet without incurring significant costs.
Also, rules and schedules can control the use of the wireless communication channel. For example, changes could be transmitted only when the non-volatile memory is approaching a set capacity, e.g. 80% full. Also, the change records could be selectively transmitted, e.g. only changes to appointments are transmitted, but not changes to contacts.